@Haggard
2年前 提问
1个回答
造成文件上传漏洞的原因有哪些
上官雨宝
2年前
文件上传漏洞的五个成因:
服务器配置不当
在不需要上传文件的情况下可导致任意文件上传,参考HTTP请求方法PUT。
本地文件上传被绕过
只在客户端浏览器上做了文件限制而没有在远程的服务器上做限制,只需要修改上传时发送的数据包就可以轻松绕过上传限制 。
a.抓包看,禁用JS插件(这个插件用作文件上传本地验证),现上传一个恶意文件,如果是本地限制,执行过滤的就是浏览器的js插件,禁用后就能上传恶意文件
b.如果是服务器限制,先把恶意文件传给服务器,然后服务器再返回过滤结果,这个时候单单禁用本地的js插件没什么用
过滤不严或被绕过
有些网站使用上传黑名单过滤掉一些可执行文件脚本的后缀,但是黑名单不全或者被绕过,也可导致恶意文件上传。如果使用白名单,仅允许名单内所包含的文件格式上传会更加安全。
文件解析漏洞导致文件执行
解析漏洞是指web服务器因对http请求处理不当导致将非可执行的脚本,文件等当做可执行的脚本,文件等执行。该漏洞一般配合服务器的文件上传功能使用,以获取服务器的权限。
路径截断
上传的文件中使用一些特殊的符号,文件被上传到服务器时路径被这些符号截断,从而控制文件上传的路径。